home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
United Public Domain Gold 4
/
United Public Domain Gold 4.iso
/
tbag
/
tb077.dms
/
tb077.adf
/
Docs
/
Model4D.docs
< prev
next >
Wrap
Text File
|
1993-01-03
|
48KB
|
1,249 lines
MODEL4D USER-MANUAL
CONTENTS
1. Getting started
1.1 Hardware requirements
1.2 Software requirements
1.3 Running Model4D
2. What is Model4D?
2.1 What can it do?
2.2 How does it do it?
2.3 The view modes
2.4 The 3D cursor
2.5 Messages
3. Menus
3.1 How to use Amiga menus
2.1.1 Mouse selection
2.1.2 Keyboard short-cuts
3.2 Model4D menus
3.2.1 Project menu
3.2.2 Object menu
3.2.3 Animation menu
3.2.4 Tool menu
3.2.5 Preferences menu
4. Edit panel
5. Hierarchy window
6. Palette editor
7. Animation panel
8. Appendices
8.1 Amiga interface usage
8.1.1 Using the mouse
8.1.2 Menus
8.1.3 Requesters
8.1.4 Sliders
8.2 Questions and Answers
8.3 Error messages
8.4 Example tasks
8.4.1 Teapots
8.5 Glossary
8.6 File Format
1. GETTING STARTED
1.1 HARDWARE REQUIREMENTS
The minimum hardware required to run Model4D is an Amiga
computer with 512K of chip memory, 512K of fast memory and 7.14mhz
68000 processor, eg. the Amiga 500P.
With the minimum set up the user will be restricted by memory
as to the complexity of the scenes that can be created. The speed of
the creation of scenes will also be slow at any level of complexity.
The interlaced screen mode used in Model4D will also suffer from
"flicker" on a basic system - this can be improved by changing the
palette.
The above problems outline the need for; more fast memory, a
faster processor and a flicker fixer. Note that a hard disk is
optional as Model4D will run from floppy disk very easily.
The recommended system is an Amiga 3000, or system built to
equivalent specification.
1.2 SOFTWARE REQUIREMENTS
Requires Kickstart 1.3 or higher (Kickstart 2.0 compatible).
The program will require the diskfont.library,
mathieeedoubbas.library and mathieeedoubtrans.library to be present
in the LIBS: directory. The program also requires that you have
CLIPS: assigned to somewhere writable like RAM: for cutting,copying
and pasting objects.
1.3 RUNNING MODEL4D
Model4D can be run from Workbench or from a CLI. To run
Model4D from Workbench simply double click on its icon. To run
Model4D from a CLI, first open a CLI or Shell window, then in the
Model4D directory type Model4D<return>.
2. WHAT IS MODEL4D?
The problem is one of constructing a computer model of objects
in three-dimensions. Displaying these models on a two-dimensional
display device such as a monitor and supplying tools to arrange three-
dimensional scenes and animations are thus needed. Objects that are
often needed to be modelled are very complex for a computer, such as a
person, as they do not conform to a mathematical model and are
essentially "random". This program is the prototype for a system that
would have "3D brushing" where any such object could be modelled like
a mass of clay. This was beyond the scope of this version but when
using it the emphasis on object flexibility will become apparent. For
example the files produced store all vertices and edges as if each
object were "random"; even if it could be described mathematically.
2.1 WHAT CAN IT DO?
In Model4D scenes can be created from several mathematical
primitives and two tools - lathe and extrude. The lathe provides
flexible user-definition of objects of rotation and extrude allows
user-definition of box-like objects such as a house, for example.
These can be combined and mixed together in a hierarchy of objects in
any way you like. The idea of a hierarchy may take a while to get
used to, but it is very useful and allows grouping of objects so that
they can be moved or manipulated as a group.
Simple animations can be created in a frame-by-frame fashion.
Each frame can have its own user-orientation and lightsource position.
If objects need to be changed in different frames, they can be given
their own object hierarchy. Animations can be played back in various
ways - once through forward, forward loop, backward loop and ping-pong
forward-backward loop.
2.2 HOW DOES IT DO IT?
Three-dimensional modelling on two-dimensional devices has
been tackled in several ways by other programs on the market in the
past. Scenes can be displayed in a perspective view that looks 3D but
there can be problems with positioning anything in this mode. One way
of overcoming this problem is to have multiple views of different axes
much like the third-angle views used by graphic designers. This makes
identifying 3D positions easier but doesn't give a good representation
of the scene. Model4D gives you the option of working in either a 3D
mode, the default, or a 2D tri-view mode. The 2D view gives a
wireframe only quick view for easy positioning of the 3D cursor (see
2.4).
2.3 VIEW MODES
As mentioned in 2.2 there are two "edit modes" - a 3D
perspective one and a 2D tri-view one. In the 2D mode the display is
wireframe only but in the 3D mode four view modes are available. They
are, in order of complexity and time-to-draw; wireframe, flat,
lit_flat, and Gouraud.
Wireframe is the fastest mode and draws the outline of the
objects in the hierarchy - a good mode to start editing in.
Flat mode draws objects with a single colour filled
appearance; the wireframe edges can be either on or off, with them off
only a silhouette of the shape can be seen. This mode gives a much
better sense of depth than the wireframe as only parts of the object
that should be in view can be seen.
Lit_flat mode uses a "lightsource" to light the parts of
objects that should be lit by the lightsource and darkens the parts
facing away from it. Again edges can be turned on or off and the
light source can be moved to any position in the scene.
Gouraud mode is a scan-line based drawing mode that attempts
to smooth out any curved objects in the scene to eliminate the faceted
appearance caused by the use of a polygon mesh. It again uses the
lightsource to light the objects.
2.4 THE 3D CURSOR
At all times during the use of Model4D there is a cursor that
is used for positioning objects and the lightsource. To do this in a
three-dimensional world the cursor needs also to be three-dimensional.
The coordinates of the 3D cursor are displayed in the edit panel and
can be positioned by sliding the sliders in the edit window or simply
by clicking the mouse in the main drawing window either in 3D or 2D
tri-view edit mode.
2.5 MESSAGES
Any information or error messages that are produced at any
time during the use of the program appear in the menu bar at the top
of the screen. If at any time you are not sure what is happening look
at the menu bar for a message - 3D drawing takes time; the program
might not be "stuck" but just calculating something!
The only exception to this is with requesters; an error when
specifying values in a requester will appear in the drag bar of the
requester window (see Appendix 8.1.3).
3. MENUS
In this user-manual menu items will be referred to in the
following format:
Menu.MenuItem.SubItem
For example "Object.Primitive.Sphere" means select the Object
menu pull down to the Primitive item, the submenu will then appear,
pull down to the Sphere are select. Not all menu items have sub items
thus the absence of a sub item, for example "Project.Files", means
select the menu item FILES.
3.2 MODEL4D MENUS
3.2.1 PROJECT MENU
PROJECT.FILES brings up a file requester with LOAD, SAVE,
DELETE AND CANCEL buttons. Directories can be accessed by clicking on
their name, parent directories can be accessed by clicking on the "<"
icon in the top-right of the window. There is a scroll bar to scroll
through the current directory. A new drive or directory can be typed
into the "Drawer:" box; there are three commonly needed drive buttons
at the top of the window; DF0:, DF1: and DH0:. An extension can be
entered into the "Ext:" box to only display certain files in the list.
For example you could give all your 3d projects the extension ".3d" -
typing "3d" into the Ext: box will only display directories and files
with the extension ".3d". A file can be selected by clicking on its
name or by entering its name into the "File:" box. An action can then
be performed on that file:
LOAD - attempt to load project into memory;
this will lose the current project in memory.
if the file is not the correct format an error
message will appear.
SAVE - attempt to save current project;
if the file exists it will be overwritten.
if the file cannot be written to an error
message will appear.
DELETE -attempt to delete selected file.
a prompt will be given to make sure you really
want to delete the selected file.
if file could not be deleted an error message
will appear.
CANCEL -exit file requester with no action.
PROJECT.REFRESH redraws all open windows and redraws the
current scene. Useful if something unexpected corrupts the screen.
PROJECT.ABOUT brings up a window with version number and
author notes in it. Press the CONTINUE button to close.
PROJECT.SCREEN.INTERLACE toggles interlace for the render
screen.
PROJECT.SCREEN.OVERSCAN toggles overscan for the render
screen.
PROJECT.RENDER opens a ham screen using the PROJECT.SCREEN
specifications and renders the scene using the gouraud method but in
full colour using the colours defined for objects in wireframe or flat
mode. When the rendering has completed a file requester can be
brought up from a menu RENDER.FILES on the ham screen in order to save
the rendered image as an IFF picture file. RENDER.EXIT closes the ham
screen and returns to the editor screen.
PROJECT.NEW wipes the current project from memory and starts a
fresh project. The preferences will remain the same.
PROJECT.QUIT brings up a YES/NO requester asking you if you
want to quit Model4D - clicking YES will exit the program, NO will
return you to the program.
3.2.2 OBJECT MENU
OBJECT.FILES brings up a file requester identical to the
project file requester. The difference is that the files LOADed and
SAVEd are objects and not projects. Objects can be selected from a
scene and saved individually and reloaded as many times as you like
into any project. LOADing an object places it at the current cursor
position and at the current position in the hierarchy - changed using
the hierarchy window (see 5.).
NOTE: Objects retain their palette entry but not the actual colour as
this is palette dependant. Palettes are saved with projects but not
with objects for obvious reasons.
OBJECTS.PRIMITIVE.CUBE brings up a requester with a single
Size slider in it. The size is displayed in the box to the right of
the slider and can be entered via the keyboard by clicking in the box
on the number and entering a number between 0 and 200. Alternatively,
the size can be changed by sliding the slider - the number will not
change until the mouse button is released.
Clicking on OK will create a cube of the requested size at the
current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.SPHERE brings up a requester with two
sliders - Radius and Divisions. Both attributes can be changed by
either sliding the slider or by entering a number in the corresponding
number box. Radius determines the overall size of the resulting
sphere and should be a number between 0 and 200. Divisions is a
measure of the density of the polygon-mesh approximation of a curve
and should be between 0 and 100. Practically, values greater than 50
are over-kill for a sphere. The best way to understand the result of
changing this value is to try out different numbers. Basically the
higher the number the better the curvature but the longer it will take
to calculate and the bigger the resultant file as there will be more
faces.
Clicking on OK will create a sphere of the requested
specification at the current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.HALF-SPHERE brings up a requester with two
sliders - Radius and Divisions. Both attributes can be changed by
either sliding the slider or by entering a number in the corresponding
number box. Radius determines the overall size of the resulting semi-
sphere and should be a number between 0 and 200. Divisions is a
measure of the density of the polygon-mesh approximation of a curve
and should be between 0 and 100. Practically, values greater than 50
are over-kill for a half-sphere. The best way to understand the
result of changing this value is to try out different numbers.
Basically the higher the number the better the curvature but the
longer it will take to calculate and the bigger the resultant file as
there will be more faces.
Clicking on OK will create a half-sphere of the requested
specification at the current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.CYLINDER brings up a requester with two
sliders - Radius and Divisions. Both attributes can be changed by
either sliding the slider or by entering a number in the corresponding
number box. Radius determines the overall size of the resulting
cylinder - its length is the same as its diameter and should be a
number between 0 and 200. Divisions is a measure of the density of
the polygon-mesh approximation of a curve and should be between 0 and
100. The best way to understand the result of changing this value is
to try out different numbers. Basically the higher the number the
better the curvature but the longer it will take to calculate and the
bigger the resultant file as there will be more faces.
Clicking on OK will create a cylinder of the requested
specification at the current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.PYRAMID brings up a requester with a single
Size slider in it. The size is displayed in the box to the right of
the slider and can be entered via the keyboard by clicking in the box
on the number. Alternatively, the size can be changed by sliding the
slider - the number will not change until the mouse button is
released.
Clicking on OK will create a pyramid of the requested size at
the current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.CONE brings up a requester with two sliders
- Radius and Divisions. Both attributes can be changed by either
sliding the slider or by entering a number in the corresponding number
box. Radius determines the overall size of the resulting cone - its
length is the same as its diameter and should be a number between 0
and 200. Divisions is a measure of the density of the polygon-mesh
approximation of a curve and should be between 0 and 100. The best
way to understand the result of changing this value is to try out
different numbers. Basically the higher the number the better the
curvature but the longer it will take to calculate and the bigger the
resultant file as there will be more faces.
Clicking on OK will create a cone of the requested
specification at the current cursor position.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.PRIMITIVE.SPIKY-SPHERE brings up a requester with two
sliders - Radius and Divisions. Both attributes can be changed by
either sliding the slider or by entering a number in the corresponding
number box. Radius determines the overall size of the resulting
spiky-sphere and should be a number between 0 and 200. Divisions is a
measure of the density of the polygon-mesh approximation of a curve
and should be between 0 and 100. Practically, values greater than 50
are over-kill for a spiky-sphere. The best way to understand the
result of changing this value is to try out different numbers.
Basically the higher the number the better the curvature but the
longer it will take to calculate and the bigger the resultant file as
there will be more faces.
Clicking on OK will create a spiky-sphere of the requested
specification at the current cursor position - this is a sphere with
random amounts added to its radius all around the sphere resulting in
a "spiky" look.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.RESET resets the object rotation and scaling.
OBJECTS.RESIZE.DOUBLE doubles the size of the selected object.
OBJECTS.RESIZE.HALF halves the size of the selected object.
OBJECTS.RESIZE.VARIABLE brings up a requester with four Size
sliders in it. The size is displayed in the box to the right of the
slider and can be entered via the keyboard, by clicking in the box on
the number, and should be between 0 and 200. Alternatively, the size
can be changed by sliding the slider - the number will not change
until the mouse button is released. The top slider is a global value
which will set each of the other sliders (X,Y,Z) to that value.
Alternatively each of the X,Y and Z sliders can be altered
individually - it is these values which are used; the global value is
simply for setting the X,Y,Z sliders and nothing else.
Clicking on OK will change the size of the selected object to
the percentage of its size in the three axes specified.
Clicking on CANCEL will close the requester and do nothing.
OBJECTS.FLIP.X rotates the selected object 180 degrees about
its X-axis.
OBJECTS.FLIP.Y rotates the selected object 180 degrees about
its Y-axis.
OBJECTS.FLIP.Z rotates the selected object 180 degrees about
its Z-axis.
OBJECTS.ROTATE brings up a requester with four Angle sliders
in it. The angle is displayed in the box to the right of the slider
and can be entered via the keyboard, by clicking in the box on the
number, and should be between 0 and 360. Alternatively, the angle can
be changed by sliding the slider - the number will not change until
the mouse button is released. The top slider is a global value which
will set each of the other sliders (X,Y,Z) to that value.
Alternatively each of the X,Y and Z sliders can be altered
individually - it is these values which are used; the global value is
simply for setting the X,Y,Z sliders and nothing else.
Clicking on OK will change the rotation of the selected object
about each of its axes by the angles specified.
Clicking on CANCEL will close the requester and do nothing.
3.2.3 ANIMATION MENU
ANIMATION.FILES not available.
ANIMATION.PANEL toggles on/off the animation panel (see 6.).
ANIMATION.FRAMES.SET # brings up a Animation Size requester.
This number set is the size of the animation in frames. If the number
is bigger than the current frame count then the necessary number of
frames are added. If the number is less than the current frame count
then the necessary number of frames are deleted from the end of the
animation.
Clicking on OK will set the frame count.
Clicking on CANCEL will close the requester and do nothing.
ANIMATION.FRAMES.ADD FRAME adds a frame at the current frame
position.
ANIMATION.FRAMES.GOTO FRAME brings up a requester with a frame
slider in it. Specify the frame to jump to.
Clicking on OK will display the specified frame.
Clicking on CANCEL will close the requester and do nothing.
ANIMATION.FRAMES.DELETE FRAME deletes the current frame. If
there is only one frame then nothing is deleted and a message is
displayed.
ANIMATION.FRAME RATE not available.
3.2.4 TOOLS MENU
TOOLS.LATHE brings up a requester with Radius and Divisions
sliders in it. Since the shape is to be defined by the user the
radius is simply a size percentage - 100 means the same size that you
draw it, 200 is double size etc. Divisions is a measure of the
density of the polygon-mesh approximation of a curve and should be
between 0 and 100. The best way to understand the result of changing
this value is to try out different numbers. Basically the higher the
number the better the curvature but the longer it will take to
calculate and the bigger the resultant file as there will be more
faces.
Clicking on OK will prompt you to define the axis of rotation
for the lathe. Clicking two points with the mouse, the start and end
points, will accomplish this. You will then be prompted to define a
shape for rotation - click as many points as you like; they will be
joined together to form a shape. A double-click on the last point is
necessary to complete the process. The resulting lathe is then
produced.
Clicking on CANCEL will close the requester and do nothing.
TOOLS.EXTRUDE brings up a Size requester with a size slider in
it. The size is the amount the defined shape will be stretched to
give depth and should be between 0 and 200.
Clicking on OK will prompt you to define the shape. Click
points with the mouse to define a shape - double-click on the last
point to complete the process. If the last point does not touch the
first point then it will join them together for you. The shape will
then be stretched away from you to form a solid.
Clicking on CANCEL will close the requester and do nothing.
3.2.5 PREFERENCES MENU
PREFERENCES.LIGHTSOURCE toggles the display of the lightsource
position with an "X".
PREFERENCES.WORKBENCH toggles the workbench screen. Closing
it can release some memory. NOTE: The Workbench can only be closed if
no programs have been run from it - including Model4D!
PREFERENCES.GRID toggles a background grid to the scene -
useful for positioning objects etc.
PREFERENCES.PERSPECTIVE toggles perspective viewing in 3D
mode. Turning perspective off results in no depth-shrinking; ie.
there is no idea of depth in the image.
PREFERENCES.EDGES toggles edges in both flat and lit_flat
viewmodes. In flat mode turning edges off gives a "silhouette" look
to objects. In lit_flat mode turning edges off looks good as faces
are shaded depending on their lighting.
PREFERENCES.SHADOWS toggles shadowing in both lit_flat and
Gouraud drawing modes, including the colour rendering. Faces that are
hidden from the lightsource by other faces are darkened, ie. shadowed.
PREFERENCES.VIEWMODE.WIREFRAME puts 3D mode into wireframe
drawing mode. This is the fastest drawing mode and only draws the
outline of objects.
PREFERENCES.VIEWMODE.FLAT puts 3D mode into flat drawing mode.
This takes the same time to calculate as wireframe but takes longer to
draw. It fills the faces in with the objects colour.
PREFERENCES.VIEWMODE.LIT_FLAT puts 3D mode into lit_flat
drawing mode. This takes slightly longer to calculate and the same
time to draw as flat. It uses the "lightsource", which defaults to
the origin but can be moved (see 4. Edit panel), to determine how
light a face should be. It changes the palette to a grey scale
palette, which cannot be edited, for the shades. The colour palette
is retained and is restored when you return to wireframe or flat
viewmode.
PREFERENCES.VIEWMODE.GOURAUD puts 3D mode into Gouraud drawing
mode. This takes the longest to both calculate and draw. It also
changes to a grey scale palette and uses the light source to light
faces. It also smooths curved objects using the available grey scales
to attempt to eliminate the faceted appearance of curved surfaces (eg.
a sphere). This mode is not really practical for editing in but in
case anyone has a 50mhz 68040 out there give it a go!
4. EDIT PANEL
SELECT ICON is not available.
BRUSH ICON is not available.
USE ICON is not available.
HIERARCHY WINDOW ICON toggles the hierarchy window (see 4. for
operation of hierarchy window).
2D ICON toggles 3D/2D tri-view edit mode.
CHANGE OBJECT ORIGIN ICON moves the origin for the object's
rotation and scaling to the current cursor position. If object has
previously been rotated or scaled about another origin then the option
to reset rotation and scaling for that object will be given - no reset
will do the previous rotation and scaling about the new origin.
CUT ICON cuts out the selected object from the scene. This
actually SAVEs the object to a temporary object file "Model4D_clip" in
the CLIPS: directory which is usually set to the clipboard directory
in the RAM disk. This may take a few seconds but is extremely
flexible as not only can the object be pasted back in from here (see
below) but can also be edited in a text editor and/or saved to disk
for later use. This file can be loaded in as an object using the
OBJECTS.FILES requester.
COPY ICON copies the selected object. This also saves to a
temporary file as with CUT.
PASTE ICON pastes the clipboard object at the current cursor
position. This loads the above mentioned temporary object file. The
clipboard object can be pasted as many times as memory will allow.
MOVE ICON moves the selected object to the current cursor
position.
ZOOM IN ICON zooms the user position forward by Step Size (see
7. Animation panel).
ZOOM OUT ICON zooms the user position back by Step Size (see.
7. Animation panel).
UNDO ICON is not available.
LIGHTSOURCE MOVE ICON moves the lightsource to the current
cursor position.
CURSOR XY SLIDER moves cursor left/right, up/down.
CURSOR Z SLIDER moves cursor in/out.
PALETTE EDITOR ICON brings up the palette editor (see 6.
Palette Editor).
COLOUR ICONS change the colour of the selected object.
5. HIERARCHY WINDOW
This window, when open, allows the user to inspect the object
hierarchy and select objects in it. When this window is first opened
the objects defined at the root are displayed in a list. If there are
more than can fit in the window (10), use the UP and DOWN icons to
scroll through the list.
OBJECT NAME ICONS will make that object the "selected object".
RENAME ICON brings up a requester with a Name string in it.
This can be edited by clicking in the box. Clicking on OK changes the
object name. Clicking on CANCEL leaves it as it was.
GO TO ICON takes you down the hierarchy, making the selected
object the parent.
PARENT ICON takes you up the hierarchy to the parent. if you
at the root then an error message is displayed.
DOWN ICON scrolls down name list.
UP ICON scrolls up name list.
CREATE ICON creates a abstract group object. This is an
object with no faces but simply serves as a parent for a group of
objects. Its origin is at the current cursor position.
6. PALETTE EDITOR
COLOUR ICONS select colour to edit.
RED SLIDER changes red component of selected colour.
GREEN SLIDER changes green component of selected colour.
BLUE SLIDER changes blue component of selected colour.
COPY ICON prompts for a target colour slot. Selecting a
second colour copies first colour to second.
SWAP ICON prompts for second colour slot. Selecting a second
colour swaps first colour with second.
SPREAD ICON prompts for a second colour slot. Selecting a
second colour smoothly spreads colours between first and second.
UNDO ICON resets palette to as it was before editing started.
OK ICON accepts changes.
CANCEL ICON closes palette editor and resets palette to as it
was before editing started.
7. ANIMATION PANEL
START FRAME ICON sets current frame to frame 1.
END FRAME ICON sets current frame to last frame.
PREVIOUS FRAME ICON sets current frame to previous frame.
NEXT FRAME ICON sets current frame to next frame.
ADD FRAME ICON adds a frame at the current position.
DELETE FRAME ICON deletes current frame.
EDIT FRAME SPECIFIC ICON gives frame its own hierarchy.
PLAY ANIMATION ICON plays animation once from current frame.
PLAY FORWARD LOOP ICON plays animation in forward loop.
PLAY BACKWARD LOOP ICON plays animation in backward loop.
PING-PONG ICON plays animation forward-backward-forward....
RESET USER ORIENTATION ICON resets user orientation.
USER XY SLIDER moves user left/right, up/down.
USER Z SLIDER moves user in/out.
USER XY ANGLE SLIDER rotates user about x/y axes.
USER Z ANGLE SLIDER rotates user about z axis.
STEPSIZE SLIDER sets size of steps for user/cursor movement.
8. APPENDICES
8.1 AMIGA INTERFACE USAGE
8.1.1 USING THE MOUSE
For anybody not familiar with using Amiga programs, here are
few pointers to acclimatize you. First of all, 95% of functions are
available using the mouse; the only time you NEED to use the keyboard
will be to type a file name or an object name etc. Operations are
available by CLICKING (click-release of left mouse button) on icons or
by selecting MENUS. This approach means that programs are relatively
easy to learn. Here are some definitions:
SELECT button :- LEFT mouse button
MENU button :- RIGHT mouse button
ICON/GADGET/BUTTON :- small area on screen identified by a
graphic.
MENU :- Pull down list of operation choices.
8.1.2 MENUS
8.1.2.1 MOUSE SELECTION
Holding down the mouse menu button (right button) gives you
the pull-down menus from the menu bar. These are accessed in the
standard Amiga way. For those not familiar with Amiga menus, they are
accessed in the following way:
i) Hold down right mouse button (menu button)
ii) Keeping button held, put mouse mouse pointer on to the
menu bar at the top of the screen.
iii) Put mouse pointer onto menu option and pull down the menu
- the items will high-light as the mouse runs over them.
iv) When required option high-lighted release menu button.
(v) Item is selected.
8.1.2.2 KEYBOARD SHORT-CUTS
Some menus have keyboard equivalents - these are displayed
next to the menu item in the menu itself. The "A" is the right Amiga
key on the keypad - this must be held down while pressing the
appropriate key. There is absolutely no difference between selecting
the menu item with the mouse or using the keyboard short-cut.
8.1.3 REQUESTERS
Requesters are pop-up boxes containing information and/or some
gadgets to make changes to parameters. Requesters always have at
least one EXIT button, usually two - OK and CANCEL. The ABOUT
requester in an example that has a single CONTINUE button. At the
other end of the spectrum the File requester is a complex requester
with several buttons, and rather than a simple OK has three operations
- LOAD, SAVE and DELETE. When a requester appears, it should be
attended to and closed before trying to access other parts of the
program. Closing the requester is done by clicking on an exit button
- usually at the bottom of the requester. Clicking on CANCEL will
close the requester with no affect to the program.
Error messages associated with a requester will appear in the
drag bar of the requester window.
8.1.4 SLIDERS
Sliders are a mouse operated way of specifying a value within
a certain range. An example of sliders are the scroll bars on the
Workbench windows that specify what part of the directory appears in
the window. In Model4D sliders are used to specify various
parameters, such as the radius of a sphere or the position of the
user.
To slide a slider, hold down the left mouse button on the
slider gadget and while still holding down the button move the mouse
to slide the slider inside its container box to the desired position
and release the button.
Note that the sliders to specify the cursor and user
orientation in Model4D are AUTO-CENTRING; that is they always return
to the centre of their container after moving them - sliding them
moves relative to the current position.
8.2 QUESTIONS AND ANSWERS
1. How do I get started on a project?
As with any project, you need a clear idea of what it is that
you want to achieve before using Model4D. Having said that Model4D
does allow the user to 'experiment' with various functions with the
ability to CUT any objects that are not needed.
With an objective set, you can create the initial grouping
objects in the hierarchy window by clicking on CREATE and then RENAME
to give them a meaningful names. Then fleshing out the objects by
clicking GO TO on each object in turn and using the object creation
and manipulation functions.
2. Is there a limit to the number of objects I can have?
Yes. The memory of your computer will limit you, but the
program will not.
3. Is there a limit to how many levels I can go to in the hierarchy?
No. It takes next to no memory to create a grouping object.
4. How do I position an object further away without moving the view
orientation?
There are two ways this can be done. The 3D cursor can be
moved in or out using the z-slider in the edit panel or the cursor can
be positioned in the 2D tri-view. Clicking on the MOVE OBJECT icon in
the edit panel then moves the object to the cursor.
8.3 ERROR MESSAGES
ERROR : File does not exit.
SYMPTOMS: Trying to load a file that does not exist in the specified
directory.
SOLUTION: Change directory to where file is and/or specify a file that
exists in specified directory.
ERROR : File not correct format.
SYMPTOMS: Trying to load a non-Model4D file.
SOLUTION: Choose a Model4D file.
ERROR : This is an object file.
SYMPTOMS: Trying to load an Model4D object file as a project.
SOLUTION: Load file as an object.
ERROR : This is a project file.
SYMPTOMS: Trying to load a Model4D project file as an object.
SOLUTION: Load file as a project.
ERROR : Could not save to this file.
SYMPTOMS: Trying to save to a file that is a directory or is write-
protected.
SOLUTION: If file is a directory then change file name, if not then
use CLI command PROTECT to write enable file (see AmigaDOS manual for
usage).
ERROR : No object selected to save.
SYMPYOMS: Trying to save an object without first selecting one.
SOLUTION: Select object to save in hierarchy window.
ERROR : No object selected.
SYMPTOMS: Trying to perform an object manipulation without first
selecting an object.
SOLUTION: Select object to manipulate in hierarchy window.
ERROR : Could not write to CLIPS:Model4D_clip
SYMPTOMS: Trying to cut/copy object and CLIPS: directory has not been
assigned to a writable area (usually RAM:Clipboards).
SOLUTION: Assign CLIPS: to RAM: or whereever you like (put in startup-
sequence if possible).
ERROR : No object to cut.
SYMPTOMS: Selected cut without selecting an object.
SOLUTION: Select object to cut in hierarchy window.
ERROR : No object to copy.
SYMPTOMS: Selected copy without selecting an object.
SOLUTION: Select object to copy in hierarchy window.
ERROR : No object to paste - could not read CLIPS:Model4D_clip.
SYMPTOMS: Trying to paste an object without having previously cut or
copy.
SOLUTION: Cut or copy required object before selecting paste.
ERROR : Size should be in range 0 - 200
SYMPTONS: Entered number in size number box less than 0 or greater
than 200.
SOLUTION: Enter number between 0 and 200.
ERROR : Angle should be in range 0 - 360
SYMPTOMS: Entered number in angle number box less than 0 or greater
than 360.
SOLUTION: Enter number between 0 and 360.
ERROR : Radius should be in range 0 - 200.
SYMPTOMS: Entered number in radius number box less than 0 or greater
than 200.
SOLUTION: Enter number between 0 and 200.
ERROR : Divisions should be in range 0 - 100.
SYMPTOMS: Entered number in divisions number box less than 0 or
greater than 100.
SOLUTION: Enter number between 0 and 100.
ERROR : Cannot edit grey scale palette.
SYMPTOMS: Trying to edit the fixed grey-scale palette.
SOLUTION: To edit the colour palette go to either wireframe or flat
viewmode.
ERROR : No previous frame.
SYMPYOMS: Trying to go to previous frame on frame 1.
SOLUTION: To get to the last frame select END FRAME icon. To add a
frame select the ADD FRAME icon.
ERROR : No next frame.
SYMPTOMS: Trying to go to next frame on the last frame.
SOLUTION: To get to the first frame select START FRAME icon. To add a
frame select the ADD FRAME icon.
ERROR : Cannot delete only frame.
SYMPTOMS: Trying to delete the only existing frame.
SOLUTION: To start a new project select NEW from project menu.
ERROR : This frame already has its own hierarchy.
SYMPTOMS: Trying to give the only existing frame another object
hierarchy.
SOLUTION: This function is only available if more than one animation
frame exists.
ERROR : Cannot animate one frame.
SYMPTOMS: Trying to animate one frame.
SOLUTION: Create some more frames.
ERROR : Root has no parent.
SYMPTOMS: Trying to go to parent object of root in hierarchy window.
SOLUTION: If you want to group objects into a single object, you have
to click CREATE to create a grouping object and cut and paste the
objects into it.
ERROR : Out of memory - could not complete task.
SYMPTOMS: There is no more memory available to do the requested task.
SOLUTION: Try saving the project, NEWing and reloading; this may free
up some memory, then make the scene simpler - recreate lathes with
less divisions etc..
8.4 EXAMPLE TASKS
Here are some step-by-step examples of how Model4D can be
used.
8.4.1 TEAPOTS
1. If already in Model4D select PROJECT.NEW to clear memory
and select PREFERENCES.VIEWMODE.WIREFRAME to put into wireframe view
mode. Otherwise run Model4D with its default settings.
2. Select HIERARCHY WINDOW icon in edit panel to bring up the
hierarchy window.
3. Select CREATE in the hierarchy window to create a group
object. Now select RENAME to rename it. Enter "Teapot" and click OK.
4. Select GO TO in hierarchy window to make Teapot the parent.
5. Select PREFERENCES.GRID to on.
6. Select TOOLS.LATHE and set divisions to 30. Click OK and
set axis to a vertical line - use grid to set start at top-middle of
screen and end to bottom-middle of screen. Now draw a large "C" shape
on the left of the axis - double click on last point to finish. The
body of the teapot should now be drawn.
7. Select RENAME in the hierarchy window and name it "Body".
8. Select TOOLS.LATHE and set divisions to 20. Click OK and
set axis to the same vertical line - use grid to set start at top-
middle of screen and end to bottom-middle of screen. Now draw one
side of the lid on the left of the axis - double click on last point
to finish.
9. Select RENAME in the hierarchy window and name it "Lid".
10.Select TOOLS.EXTRUDE and set size to 10. Click OK and draw
the handle on the right hand size of the body. Double click on the
last point.
11. Select RENAME in the hierarchy window and name it
"Handle".
12.Select TOOLS.LATHE and set divisions to 10. Click OK and
set axis to a line angled up and out of the left hand side of the
body. Now set a line parallel to this axis offset by the radius of
the spout - double click on the second point and we now have a spout.
13.Select RENAME in the hierarchy window and name it "Spout".
14.Select PREFERENCES.VIEWMODE.FLAT and turn edges on if
necessary.
15.Select the PALETTE EDITOR icon in the edit panel to edit
the colours.
16.Select fifth colour and set the Red/Green/Blue all to
around the middle of their sliders - this should give a shade of grey.
17.Select sixth colour and set Red all the way to the right
(Maximum), and Green and Blue all the way to the left (Minimum) - this
should give a bright red.
18.Click OK to accept colour changes.
19.Select the Lid in the hierarchy window.
20.Click on colour six (bright red) - lid should now be
redrawn as red.
21.Select the Handle in the hierarchy window.
22.Click on colour two (black) - handle should now be redrawn
as black.
23.Select PARENT in the hierarchy window - back to root.
24.Select the Teapot in the hierarchy window.
25.Click COPY in edit panel - wait a few seconds.
26.Click ZOOM OUT in edit panel.
27.Place cursor in a space below teapot.
28.Click PASTE in edit panel - wait a few seconds - you now
have two teapots.
29.Select PREFERENCES.LIGHTSOURCE to on.
30.Select 2D in edit panel (tri-view mode).
31.Click at top-right of top-left window and then at top-left
of top-right window. Then click MOVE LIGHTSOURCE in edit panel. The
lightsource should now be placed at the top-right of the scene in
front of the objects.
32.Select 2D in edit panel (3D mode).
33.Select PREFERENCES.VIEWMODE.LIT_FLAT - after a wait the
scene will now be drawn in lightsourced grey-scales.
34.Select PREFERENCES.EDGES and scene will be redrawn with no
edges.
35.To save this project select PROJECT.FILES.
36.Set directory to where you want to save it. Enter
"Teapots" or something into "File:" and select SAVE.
8.5 GLOSSARY
ANIMATION
The fourth dimension - movement through time.
CHILD OBJECT
An object below grouping object in hierarchy.
CHIP MEMORY
Memory in an Amiga computer that is used for graphics and samples.
This is memory available to the custom chips.
CLOSE GADGET
Square icon in top left of windows used for closing the window.
DEPTH GADGET
A gadget in the upper right corner of a window that moves the window
either to the front of the screen or behind all other windows on the
screen.
DOUBLE CLICK
Rapidly pressing and releasing the mouse button twice.
DRAG BAR
The bar at the top of a window between the close gadget and the
size/depth gadgets. Holding the left mouse button on this bar enables
the moving (dragging) of the window.
EDGE
Line joining two vertices.
FACE/FACET
A list of edges which form the borders of a plane.
FAST MEMORY
Memory in an Amiga computer that is for CPU use only, not for use by
the custom chips. Access to this memory is faster than to chip memory
as there is no DMA, hence its name.
FLAT MODE
A display mode of three-dimensional objects that sorts the polygons
into decreasing distance from the viewer and draws filled polygons
farther away before nearer ones to give a solid view.
FLICKER FIXER
A device that can be fitted to an Amiga to give a steady interlaced
picture. The Amiga 3000 is fitted with one as standard.
GOURAUD MODE
A display mode of three-dimensional objects that smooths out the
borders between polygons to give a less faceted look.
HAM
Stands for Hold And Modify. A fudged screen mode of the Amiga that
allows 4096 colours to be used simultaneously on a screen. HAM works
by using the palette value of a pixel to modify either the red, green
or blue attributes of the pixel to the left; thus this can result in
"bands" appearing 1 or 2 pixels wide between different colours.
HIERARCHY
Tree structure with objects arranged as children of parents.
ICON
A small picture that when clicked on performs a specific function.
INTERLACE
A technique for refreshing the display screen by alternately
displaying odd and even lines.
KICKSTART
The basic routines that comprise the Amiga's operating system.
LIT_FLAT MODE
A display mode of three-dimensional objects that uses the FLAT
technique plus a lightsource to light individual polygons.
MOUSE
The small, palm-sized device used to control the pointer and to
communicate with your Amiga. It contains two buttons for selecting
icons, dragging icons, windows or screens, and displaying menus.
PALETTE
List of available screen colours. Each colour can be one of 4096.
PARENT OBJECT
An object above child object in hierarchy.
PERSPECTIVE
Effect of the human eye when viewing a three-dimensional scene which
means that objects far away look smaller than nearer ones.
PING-PONG
An animation playback mode that plays all frames forward to the last
then plays them backwards to the first then repeats this in an
infinite loop.
POLYGON
A drawing primitive. A polygon is a list of joined straight lines,
with the end of the last line joined to the start of the first.
PRIMITIVE
A three-dimensional object that can be mathematically calculated from
parameters.
PROJECT
In Model4D a project is an animation with all its frames, object
hierarchies, the defined palette and user orientation.
SHADOWS
Parts of objects that are hidden from the light source by other parts
appear darker; this option is available in Model4D and can take some
time to calculate.
SIBLING OBJECT
An object with same parent as another object.
TOGGLE
A feature which operates like a switch. When a toggle is clicked on
its state will change, and remain changed until it is clicked again.
TRI-VIEW
A way of displaying a three-dimensional scene on a two-dimensional
display device that uses a front, side and top view of the scene,
hence tri-view.
VECTOR
A line joining two vertices with a direction implied by the vertex
order.
VERTEX
A three-dimensional coordinate.
WIREFRAME MODE
A simple display mode of three-dimensional objects that draws the
outline of every polygon in the object.
WINDOW
A framed area of the screen that can be moved and resized with no
affect to the rest of the screen.
WORKBENCH
The Amiga's icon-based (graphical) user-interface software.
8.6 FILE FORMAT
Header
Colour palette
Red, Green, Blue [16 entries]
Frame,...0
Frame hierarchy toggle [1=object information follows]
Viewer coordinates
x,y,z
Viewer angles
xa,ya,za
Lightsource coordinates
x,y,z
Vertices,...0
vertex_id, x, y, z
Edges,...0
edge_id, vertex_id, vertex_id
Sibling/Child/Parent Objects,...0
Translation
Rotation
Scaling
Material
Polygons,...0
type[1=curve/2=flat], polygon_id, edge_id,edge_id,...,0